category: sub_main
step: 4_graph
sub_step: 6_qid
in_main_macro: graph
doc_status: readymacro graph_qid
| Name | Category | In Sub-Main Macro | Doc Status |
|---|---|---|---|
| calc_graph | auxiliary | graph_glue, graph_qid | ready |
Это шестой шаг макроса graph. Это завершающий этап, в ходе которого graph_qid использует данные из предыдущих макросов для формирования итоговой таблицы, где каждому уникальному ключу соответствует идентификатор группы (qid).
Этот макрос принимает следующие аргументы:
params=none,
stage_name=none,
limit0=none
Сначала в макросе происходит настройка материализации данных: устанавливается порядок сортировки данных по дате, ссылке и идентификатору.
pre_hook указывает на необходимость выполнения предварительного хука при помощи вспомогательного макроса calc_graph перед выполнением запроса.
Далее происходит выборка данных для формирования итоговой таблицы: каждому уникальному ключу (__link, __datetime, __id) соответствует qid из ранее созданной таблицы graph_glue. Основой запроса является таблица graph_glue, которая соединена с таблицей graph_lookup по key_number = node_id_left
Если аргумент limit0 активирован, то в конце SQL-запроса будет добавлено LIMIT 0.
Файл в формате sql в папке models. Название файла graph_qid
Содержимое файла:
-- depends_on: {{ ref('graph_lookup') }}
-- depends_on: {{ ref('graph_glue') }}
{{ datacraft.graph() }}